#pragma once
#include <time.h>
#include <iostream>
#include <vector>
#include "vector.h"
#include <time.h>
#include <stdlib.h>
#include <iostream>
#include <string>
#include <fstream>
#include <sstream>


class Util
{
public:
		static const double taillePanneau;
	static const double tailleBarriere;
	static const double tailleRampe;
	static const double tailleTerrain;
	static const double aireMinimaleLandquad;
	static const double aireMinimaleLandtriangle;
	static const double largeurRue;
	static const double hauteurEtage;
	static const double hauteurFenetre;
	static const double hauteurInterFenetre;
	static const double hauteurtrotoire;
	static const double hauteurToit;
	static const double longeurFenetre;
	static const double coef;
	static const double aireCourMinimale;
	static const double longeurBatimentMinimale;
	static int nbOcurFrag;
	static std::vector<std::vector<long double>> points;
	static std::vector<std::vector<long double>> faces;

	Util(void);
	static int random();
	static int randomBorne(int borneInf, int bornSup);
	static Vector getPartie(const Vector& v1, const Vector& v2, const double & scalaire);
	~Util(void);
	static double  foncDecroissante (double borneMax, double bornInf, double separateur, double x);
	static double foncCroissante (double borneMax, double bornInf, double separateur, double x);
	static void importOBJ(std::string filename, std::vector<long double>point_depart);
    static Vector Util::getPartieModif(const Vector& v1, const Vector& v2, const double & scalaire);
};
